Statically Resolvable Ambiguity

نویسندگان

چکیده

Traditionally, a grammar defining the syntax of programming language is typically both context free and unambiguous. However, recent work suggests that an attractive alternative to use ambiguous grammars,thus postponing task resolving ambiguity end user. If all programs accepted by can be rewritten unambiguously, then parser for said resolvably ambiguous. Guaranteeing resolvable statically---for programs---is hard, where previous only solves it partially using techniques based on property-based testing. In this paper, we present first efficient, practical, proven correct solution statically problem. Our approach introduces several key ideas, including splittable productions, operator sequences, concept grouper works in tandem with standard parser. We prove static resolvability Coq mechanization demonstrate its efficiency practical applicability implementing integrating into essential part OCaml

برای دانلود باید عضویت طلایی داشته باشید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Statically Determining Memory Consumption

In real-time and embedded systems, it is often necessary to place conservative upper bounds on the memory required by a program or subprogram. This can be difficult and error-prone process. In this thesis, I have designed and implemented two (related) compile-time analyses to addresses this problem. The first analysis computes a symbolic upper bound on the maximum number of allocations of each ...

متن کامل

Thickly-resolvable block designs

We show that the necessary divisibility conditions for the existence of a σ-resolvable BIBD(v, k, λ) are sufficient for large v. The key idea is to form an auxiliary graph based on an [r, k]-configuration with r = σ, and then edge-decompose the complete λ-fold graph K (λ) v into this graph. As a consequence, we initiate a similar existence theory for incomplete designs with index λ. ∗ Supported...

متن کامل

Modular Statically Typed Multimethods

object colorPointAndOrigin isa colorPoint, origin

متن کامل

Locally Resolvable B-reps

A typical B-rep describes a solid in its full detail. Operations that locally analyze the B-rep usually process the entire B-rep due to the lack of spatial ordering of its topological entities. For very complex objects, this global processing is time consuming and yet unnecessary. One approach in avoiding the global processing is to use several B-reps of different levels of detail. However, thi...

متن کامل

Statically scheduled Process Networks

Event/Marked Graphs (EG) form a strict subset of Petri Nets. They are fundamental models in Scheduling Theory, mostly because of their absence of alternative behaviors (or conflict-freeness). It was established in the past that, under broad structural conditions, behavior of Timed Event Graphs (TEG) becomes utterly regular (technically speaking: “ultimately k-periodic”). More recently it has be...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Proceedings of the ACM on programming languages

سال: 2023

ISSN: ['2475-1421']

DOI: https://doi.org/10.1145/3571251